package com.mida.app.report.service;

import com.mida.bms.report.entity.DocStructTemplateInfo;
import com.mida.bms.report.vo.DocStructTemplateInfoVo;
import com.mida.bms.report.vo.PageResultVo;
import com.mida.tool.common.result.ActionResult;
import com.mida.tool.common.result.ListResult;

import java.util.List;

/**
 * 模板基本信息
 */
public interface DocStructTemplateInfoService {

    /**
     * 添加模版基本信息
     * @param docStructTemplateInfoVo
     * @return
     * @throws Exception
     */
    ActionResult addDocStructTemplateInfo(DocStructTemplateInfoVo docStructTemplateInfoVo) throws Exception;

    /**
     * 更新模版基本信息
     * @param docStructTemplateInfoVo
     * @return
     * @throws Exception
     */
    ActionResult updateDocStructTemplateInfo(DocStructTemplateInfoVo docStructTemplateInfoVo) throws Exception;

    /**
     * 逻辑删除模版基本信息
     * @param stTemplateInfoSoid
     * @return
     * @throws Exception
     */
    ActionResult deleteDocStructTemplateInfo(Long stTemplateInfoSoid) throws Exception;

    /**
     * 查询模板分页列表处理
     * @param docStructTemplateInfoVo
     * @return
     */
    ListResult<PageResultVo<DocStructTemplateInfo>> getDocStructTemplateInfoPage(
            DocStructTemplateInfoVo docStructTemplateInfoVo) throws Exception;

    /**
     * 根据模板soid查询模版数据
     * @param stTemplateInfoSoid
     * @return
     * @throws Exception
     */
    ListResult getDocStructTemplateInfo(Long stTemplateInfoSoid) throws Exception;
}
